; Merged Mod: .\1\Amber.ini, .\2\Amber.ini, .\3\Amber.ini, .\4\Amber.ini

; Constants ---------------------------

[Constants]
global persist $swapvar = 0
global $active
global $creditinfo = 0

[KeySwap]
condition = $active == 1
key = right_ctrl right
back = right_ctrl left
type = cycle
$swapvar = 0,1,2,3
$creditinfo = 0

[Present]
post $active = 0

; Shader ------------------------------

[CustomShaderTransparency]
blend = ADD BLEND_FACTOR INV_BLEND_FACTOR
blend_factor[0] = 0.7
blend_factor[1] = 0.7
blend_factor[2] = 0.7
blend_factor[3] = 1
handling = skip
drawindexed = auto

; Overrides ---------------------------

[TextureOverrideAmberPosition]
hash = 557b2eff
run = CommandListAmberPosition
$active = 1

[TextureOverrideAmberBlend]
hash = f35340d5
run = CommandListAmberBlend

[TextureOverrideAmberTexcoord]
hash = dbc594b6
run = CommandListAmberTexcoord

[TextureOverrideAmberVertexLimitRaise]
hash = da0adf2f

[TextureOverrideAmberIB]
hash = b41d4d94
run = CommandListAmberIB

[TextureOverrideAmberHead]
hash = b41d4d94
match_first_index = 0
run = CommandListAmberHead

[TextureOverrideAmberBody]
hash = b41d4d94
match_first_index = 5670
run = CommandListAmberBody

;[TextureOverrideAmberFaceHeadDiffuse]
;hash = 1d064079
;run = CommandListAmberFaceHeadDiffuse

[TextureOverride41FixVertexLimitRaise0]
hash = 53eff008

; CommandList -------------------------

[CommandListAmberPosition]
if $swapvar == 0
	vb0 = ResourceAmberPosition.0
else if $swapvar == 1
	vb0 = ResourceAmberPosition.1
else if $swapvar == 2
	vb0 = ResourceAmberPosition.2
else if $swapvar == 3
	vb0 = ResourceAmberPosition.3
endif

[CommandListAmberBlend]
if $swapvar == 0
	vb1 = ResourceAmberBlend.0
	handling = skip
	draw = 148230,0
else if $swapvar == 1
	vb1 = ResourceAmberBlend.1
	handling = skip
	draw = 148230,0
else if $swapvar == 2
	vb1 = ResourceAmberBlend.2
	handling = skip
	draw = 145028,0
else if $swapvar == 3
	vb1 = ResourceAmberBlend.3
	handling = skip
	draw = 144177,0
endif

[CommandListAmberTexcoord]
if $swapvar == 0
	vb1 = ResourceAmberTexcoord.0
else if $swapvar == 1
	vb1 = ResourceAmberTexcoord.1
else if $swapvar == 2
	vb1 = ResourceAmberTexcoord.2
else if $swapvar == 3
	vb1 = ResourceAmberTexcoord.3
endif

[CommandListAmberIB]
if $swapvar == 0
	handling = skip
	drawindexed = auto
else if $swapvar == 1
	handling = skip
else if $swapvar == 2
	handling = skip
else if $swapvar == 3
	handling = skip
	drawindexed = auto
endif

[CommandListAmberHead]
if $swapvar == 0
	ib = ResourceAmberHeadIB.0
	ps-t0 = ResourceAmberHeadDiffuse.0
	ps-t1 = ResourceAmberHeadLightMap.0
else if $swapvar == 1
	ib = ResourceAmberHeadIB.1
	ps-t0 = ResourceAmberHeadDiffuse.1
	ps-t1 = ResourceAmberHeadLightMap.1
	run = CustomShaderTransparency
else if $swapvar == 2
	ib = ResourceAmberHeadIB.2
	ps-t0 = ResourceAmberHeadDiffuse.2
	ps-t1 = ResourceAmberHeadLightMap.2
	run = CustomShaderTransparency
else if $swapvar == 3
	ib = null
	ps-t0 = ResourceAmberHeadDiffuse.3
	ps-t1 = ResourceAmberHeadLightMap.3
endif

[CommandListAmberBody]
if $swapvar == 0
	ib = ResourceAmberBodyIB.0
	ps-t0 = ResourceAmberBodyDiffuse.0
	ps-t1 = ResourceAmberBodyLightMap.0
else if $swapvar == 1
	ib = ResourceAmberBodyIB.1
	ps-t0 = ResourceAmberBodyDiffuse.1
	ps-t1 = ResourceAmberBodyLightMap.1
	drawindexed = auto
else if $swapvar == 2
	ib = ResourceAmberBodyIB.2
	ps-t0 = ResourceAmberBodyDiffuse.2
	ps-t1 = ResourceAmberBodyLightMap.2
	drawindexed = auto
else if $swapvar == 3
	ib = ResourceAmberBodyIB.3
	ps-t0 = ResourceAmberBodyDiffuse.3
	ps-t1 = ResourceAmberBodyLightMap.3
endif

[CommandListAmberFaceHeadDiffuse]
if $swapvar == 0
	ps-t0 = ResourceAmberFaceHeadDiffuse.0
else if $swapvar == 1
	ps-t0 = ResourceAmberFaceHeadDiffuse.1
else if $swapvar == 2
	ps-t0 = ResourceAmberFaceHeadDiffuse.2
else if $swapvar == 3
	ps-t0 = ResourceAmberFaceHeadDiffuse.3
endif

; Resources ---------------------------

[ResourceAmberPosition.0]
type = Buffer
stride = 40
filename = .\1\AmberPosition.buf

[ResourceAmberBlend.0]
type = Buffer
stride = 32
filename = .\1\AmberBlend.buf

[ResourceAmberTexcoord.0]
type = Buffer
stride = 12
filename = .\1\AmberTexcoord.buf

[ResourceAmberHeadIB.0]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\1\AmberHead.ib

[ResourceAmberBodyIB.0]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\1\AmberBody.ib

[ResourceAmberHeadDiffuse.0]
filename = .\AmberHeadDiffuse.dds

[ResourceAmberHeadLightMap.0]
filename = .\AmberHeadLightMap.dds

[ResourceAmberBodyDiffuse.0]
filename = .\AmberBodyDiffuse.dds

[ResourceAmberBodyLightMap.0]
filename = .\AmberBodyLightMap.dds

[ResourceAmberFaceHeadDiffuse.0]
filename = .\AmberFaceHeadDiffuse.dds

[ResourceAmberPosition.1]
type = Buffer
stride = 40
filename = .\2\AmberPosition.buf

[ResourceAmberBlend.1]
type = Buffer
stride = 32
filename = .\2\AmberBlend.buf

[ResourceAmberTexcoord.1]
type = Buffer
stride = 12
filename = .\2\AmberTexcoord.buf

[ResourceAmberHeadIB.1]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\2\AmberHead.ib

[ResourceAmberBodyIB.1]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\2\AmberBody.ib

[ResourceAmberHeadDiffuse.1]
filename = .\AmberHeadDiffuse.dds

[ResourceAmberHeadLightMap.1]
filename = .\AmberHeadLightMap.dds

[ResourceAmberBodyDiffuse.1]
filename = .\AmberBodyDiffuse.dds

[ResourceAmberBodyLightMap.1]
filename = .\AmberBodyLightMap.dds

[ResourceAmberFaceHeadDiffuse.1]
filename = .\AmberFaceHeadDiffuse.dds

[ResourceAmberPosition.2]
type = Buffer
stride = 40
filename = .\3\AmberPosition.buf

[ResourceAmberBlend.2]
type = Buffer
stride = 32
filename = .\3\AmberBlend.buf

[ResourceAmberTexcoord.2]
type = Buffer
stride = 12
filename = .\3\AmberTexcoord.buf

[ResourceAmberHeadIB.2]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\3\AmberHead.ib

[ResourceAmberBodyIB.2]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\3\AmberBody.ib

[ResourceAmberHeadDiffuse.2]
filename = .\AmberHeadDiffuse.dds

[ResourceAmberHeadLightMap.2]
filename = .\AmberHeadLightMap.dds

[ResourceAmberBodyDiffuse.2]
filename = .\AmberBodyDiffuse.dds

[ResourceAmberBodyLightMap.2]
filename = .\AmberBodyLightMap.dds

[ResourceAmberFaceHeadDiffuse.2]
filename = .\AmberFaceHeadDiffuse.dds

[ResourceAmberPosition.3]
type = Buffer
stride = 40
filename = .\4\AmberPosition.buf

[ResourceAmberBlend.3]
type = Buffer
stride = 32
filename = .\4\AmberBlend.buf

[ResourceAmberTexcoord.3]
type = Buffer
stride = 12
filename = .\4\AmberTexcoord.buf

[ResourceAmberHeadIB.3]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\4\AmberHead.ib

[ResourceAmberBodyIB.3]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = .\4\AmberBody.ib

[ResourceAmberHeadDiffuse.3]
filename = .\AmberHeadDiffuse.dds

[ResourceAmberHeadLightMap.3]
filename = .\AmberHeadLightMap.dds

[ResourceAmberBodyDiffuse.3]
filename = .\AmberBodyDiffuse.dds

[ResourceAmberBodyLightMap.3]
filename = .\AmberBodyLightMap.dds

[ResourceAmberFaceHeadDiffuse.3]
filename = .\AmberFaceHeadDiffuse.dds



; .ini generated by GIMI (Genshin-Impact-Model-Importer) mod merger script
; If you have any issues or find any bugs, please open a ticket at https://github.com/SilentNightSound/GI-Model-Importer/issues or contact SilentNightSound#7430 on discord